Augmented reality (AR) relates to providing an augmented real-world environment where the perception of a real-world environment (or data representing a real-world environment) is augmented or modified with computer-generated virtual data. For example, data representing a real-world environment may be captured in real-time using sensory input devices such as a camera or microphone and augmented with computer-generated virtual data including virtual images and virtual sounds. The virtual data may also include information related to the real-world environment such as a text description associated with a real-world object in the real-world environment. The objects within an AR environment may include real objects (i.e., objects that exist within a particular real-world environment) and virtual objects (i.e., objects that do not exist within the particular real-world environment).
In order to realistically integrate virtual objects into an AR environment, an AR system typically performs several steps including mapping and localization. Mapping relates to the process of generating a map of a real-world environment. Localization relates to the process of locating a particular point of view or pose relative to the map of the real-world environment. A fundamental requirement of many AR systems is the ability to localize the pose of a mobile device moving within a real-world environment in real-time in order to determine the particular view associated with the mobile device that needs to be augmented as the mobile devices moves within the real-world environment.